package hero.mps.leet_code_9;

public class PalindromeInteger {
    public static boolean isPalindrome(int x) {
        String s = String.valueOf(x);
        String rev = new StringBuilder(s).reverse().toString();
        return s.equals(rev);
    }

    public static boolean isPalindrome1(int x) {
        // 如果x小于0，或者x能被10整除且x不等于0，则返回false
        if (x < 0 || (x % 10 ==0 && x != 0)) {
            return false;
        }

        // 初始化反转数rev为0
        int rev = 0;

        // 当x大于rev时循环
        while ( x> rev) {
            // 将rev乘以10，再加上x的个位数
            rev = rev * 10 + x % 10;
            // 将x除以10，去掉个位数
            x /= 10;
        }

        // 如果x等于rev，或者x等于rev除以10的商，则返回true
        return x == rev || x == rev / 10;

    }


    public static void main(String[] args) {
        System.out.println(isPalindrome1(121));
    }
}
